防火墙安全策略之URL过滤与域名组

您所在的位置:网站首页 白名单 黑名单 防火墙安全策略之URL过滤与域名组

防火墙安全策略之URL过滤与域名组

2024-07-05 00:40| 来源: 网络整理| 查看: 265

一、URL过滤 1、URL过滤 1.1 简介

定义

URL过滤功能可以对用户访问的URL进行控制,允许或禁止用户访问某些网页资源,达到规范上网行为的目的。另外,对于指定URL分类的HTTP报文,FW可以修改报文中的DSCP字段,即DSCP优先级,从而便于其他网络设备根据修改后的DSCP优先级区分流量,对不同分类的URL流量采取差异化处理

目的

随着互联网应用的迅速发展,计算机网络在经济和生活的各个领域迅速普及,使得信息的获取、共享和传播更加方便,但同时也给企业带来了前所未有的威胁:

员工在工作时间随意地访问与工作无关的网站,严重影响了工作效率员工随意访问非法或恶意的网站,造成公司机密信息泄露,甚至会带来病毒、木马和蠕虫等威胁攻击在内部网络拥堵时段,无法保证员工正常访问与工作相关的网站(如公司主页、搜索引擎等),影响工作效率

URL过滤技术可以根据不同的用户/组、时间段和安全区域等信息,对用户/组进行URL访问控制,达到精确管理用户上网行为的目的。同时,URL过滤技术还可以对不同URL分类的HTTP报文修改其DSCP优先级,以便于其他网络设备对不同分类的URL流量采取差异化处理

1.2 应用场景

URL过滤功能通常用于企业网关,精确管理用户使用HTTP或HTTPS访问网络资源的行为

FW作为企业网关部署在网络边界,当企业用户发起HTTP或HTTPS的URL请求时,通过URL过滤功能可以实现对用户的请求进行放行、告警或者阻断。如图1所示,使用URL过滤后:

当用户访问合法的网站时,放行此请求,并选择是否重标记报文的DSCP优先级当用户访问非法的网站时,阻断此请求

URL过滤还可以通过引用时间段或用户/组等配置项,实现针对不同时间段或不同用户/组的请求进行放行或者阻断,达到更加精细化和准确化控制员工上网权限的需求

1.3 原理描述

URL格式

URL地址用来完整地描述Internet上的网页或者其他资源的地址

URL的一般格式为:“protocol://hostname[:port]/path[?query]”。各参数含义如表1所示

字段含义protocol使用的应用协议,最常用的是HTTP或HTTPS协议hostnameWeb服务器的域名或者IP地址:port可选,通信端口。各种应用协议都有默认的端口号,如HTTP协议的默认端口为80、HTTPS协议的默认端口号为443。当Web服务器采用非默认端口时,URL中不能省略端口号path由零个或多个“/”符号隔开的字符串,一般用来表示主机上的一个目录或文件地址?query可选,用于给动态网页传递参数

例如,如图1所示,对于“http://www.example.com:8088/news/edu.aspx?name=tom&age=20”:

图1 URL格式介绍

URL匹配方式

URL匹配方式包括前缀匹配、后缀匹配、关键字匹配、精确匹配。

管理员可以在白名单、黑名单、自定义分类和预定义分类中配置URL规则和域名规则,其中URL规则的匹配范围是全部URL,域名规则的匹配范围只是域名(或者IP地址)部分。URL规则和域名规则支持相同的匹配方式,表1对几种匹配方式做了简单比较

匹配方式定义条目        匹配结果前缀匹配匹配所有以指定字符串开头的URLwww.example*

匹配所有以www.example开头的URL,如:

www.example.comwww.example.com/solutions.do后缀匹配匹配所有以指定字符串结尾的URL*aspx

匹配所有以aspx结尾的URL,如:

www.example.com/news/solutions.aspxwww.example.com/it/price.aspx10.1.1.1/sports/abc.aspx关键字匹配匹配所有包含指定字符串的URL*sport*

匹配所有包含sport的URL,如:

sports.example.com/news/solutions.aspxsports.example.com/it/10.1.1.1/sports/精确匹配首先判断URL和指定字符串是否匹配,如果未匹配,则去除URL的最后一个目录,再和指定字符串进行匹配;如果还未匹配,则继续去除URL的最后一个目录,再和指定字符串进行匹配。以此类推,直到用域名去匹配指定的字符串为止www.example.com

根据匹配规则,以下URL可以匹配

www.example.com

www.example.comwww.example.com/newswww.example.com/news/en/

以下URL不会匹配该条目:

www.example.com.cn/newswww.example.org/news/www.example.com

URL进行匹配时,不同的匹配方式存在如下优先级顺序,由高至低如下所示:

精确匹配 > 后缀匹配 > 前缀匹配 > 关键字匹配

例如,URL“www.example.com/news”同时符合以下条目,则查询结果以精确匹配条件“www.example.com/news”对应的URL分类为准

精确匹配:www.example.com/news前缀匹配:www.example.com/*关键字匹配:*example*

在同一种匹配方式下,匹配规则越长优先级越高。例如以下条目均属于前缀匹配方式,则URL“www.example.com/news/index.html”会优先匹配“www.example.com/news/*”条目。

www.example.com/news/*www.example.com/*

在同一种匹配方式下,如果匹配规则长度也相同,则最终以配置的动作模式为准。如表2所示,两个条目均属于“关键字匹配”方式,且匹配规则长度相同均为4。对于URL“www.example.com/welcome.html”来说:

当动作模式为“严格模式”时,则最终查询结果以动作最为严格的URL分类为准,本例中为URL分类B,动作为阻断当动作模式为“松散模式”时,则最终查询结果以动作最为宽松的URL分类为准,本例中为URL分类A,动作为允许

表2 动作模式

条目URL分类控制动作*.com*URL分类A允许*html*URL分类B阻断

URL过滤方式

当用户的URL访问请求匹配到某条URL规则或域名规则后,FW会根据URL过滤方式对此URL访问请求作出相应的处理

FW提供基于黑白名单、URL分类查询、URL信誉和恶意URL的过滤方式,达到精确管理用户上网行为的目的

黑白名单:FW将解析出的URL地址与黑白名单进行匹配,如果匹配白名单则允许该URL请求;如果匹配黑名单则阻断该URL请求,同时访问者的浏览器上会显示一个Web推送页面URL分类查询:URL分类分为自定义分类和预定义分类,一个URL分类可以包含若干条URL,一条URL可以属于多个分类。设备提取URL信息后,优先进行自定义分类的查询。如果匹配自定义分类,则按照URL过滤配置文件中配置的响应动作进行处理。当控制动作为阻断时,FW将阻断该URL请求,同时访问者的浏览器上会显示一个Web推送页面

URL预定义分类查询分为两种方式:

本地查询:设备初次上电时,已经将URL分类预置库加载到缓存里。当设备提取了URL信息后,首先会在缓存中查询该URL对应的分类。如果查询到URL分类,则按照URL过滤配置文件中配置的响应动作进行处理。当控制动作为阻断时,FW将阻断该URL请求,同时访问者的浏览器上会显示一个Web推送页面。如果查询不到,则到远程查询服务器上继续查询。如果远程查询服务器不可用,则按照缺省响应动作进行处理

远程查询:远程查询服务器可以部署在广域网或本地网络中,提供更庞大的URL分类信息。当本地缓存中查询不到URL对应的分类时,设备将该URL送入远程查询服务器继续查询。如果查询到URL对应的分类,则按照URL过滤配置文件中配置的响应动作进行处理,并将该URL和其对应的分类信息保存到本地缓存中,以便下次快速查询。当控制动作为阻断时,FW将阻断该URL请求,同时访问者的浏览器上会显示一个Web推送页面。如果查询不到,则按照分类为“其他”的响应动作进行处理。如果在指定时间内没有返回任何分类信息,则按照超时动作进行处理。设备运行一段时间后,缓存的内容会不断更新,并以文件的形式保存到存储介质中。当设备重启后,系统会自动加载保存的缓存信息,减少远程分类服务器查询的过程

URL过滤的控制动作包括允许、告警和阻断,其严格程度依次增高

允许:指允许用户访问请求的URL告警:指允许用户访问请求的URL,同时记录日志阻断:指阻断用户访问请求的URL,同时记录日志

当URL属于多个分类时,响应动作将按照动作模式执行

严格模式:最终动作取所有命中分类中最严格的动作。例如URL属于2个分类,响应动作分别为“告警”和“阻断”,此时执行“阻断”松散模式:最终动作取所有命中分类中最宽松的动作。例如URL属于2个分类,响应动作分别为“告警”和“阻断”,此时执行“告警”

URL信誉

URL信誉反映了用户访问的URL是否值得信赖。FW可以利用远程查询服务获取URL的信誉值,并对低信誉的URL实施阻断。

FW可以利用URL信誉热点库和远程查询服务获取URL的信誉值

URL信誉热点库是由安全中心平台(sec.huawei.com)发布的,用来快速获取云端最新的URL信誉数据到本地,以便对不可信的URL进行及时阻断。URL信誉热点库只有在加载URL远程查询License和URL远程查询组件包后,相应的配置才会生效如果FW未启用URL信誉热点库升级功能,在本地查询不到URL信誉值时,可通过URL远程查询功能来获取最新的URL信誉值

恶意URL

恶意URL的来源有2个:

反病毒功能反馈的恶意URL。

在FW与沙箱联动场景下,沙箱反馈的恶意URL。

开启恶意URL检测功能后,URL过滤功能利用这些恶意URL信息即可对后续流量进行检测,提升设备的检测能力。如果解析出的URL地址匹配恶意URL,FW将阻断该URL请求,同时访问者的浏览器上会显示一个Web推送页面,推送信息可在FW上编辑

从实现效果上看,恶意URL和黑名单类似,二者的区别如下:

黑名单需要手动配置,恶意URL不需要手动配置黑名单不存在超时时间,配置后一直生效。恶意URL存在超时时间,达到此时间后恶意URL会被自动删除黑名单配置信息存储在配置文件中,恶意URL信息存储在缓存中。当FW重启时,恶意URL缓存将被清空

在线查询URL分类

如果在FW上查询不到某个URL的分类,可以通过在线查询的方式获取该URL的分类信息。当FW针对该URL进行远程查询时,相应的分类信息将被更新到本地URL分类库。这样可确保访问控制和行为审计等配置的准确性,防止错误地阻断或放行用户访问网站。

在线查询URL分类的服务由华为安全中心(sec.huawei.com)提供。登录网站后,选择“客户支持 > URL分类查询”。在页面显示的文本框中输入要查询的URL地址,即可查询出其所属的URL分类。如果您认为URL分类信息不准确,或者华为安全中心平台无法识别该URL地址所属的分类,您可以填写反馈信息,帮助我们更好地完善URL分类信息

1.4 URL过滤处理流程

介绍FW进行URL过滤的处理流程

在FW启用URL过滤功能的情况下,当用户通过FW使用HTTP或HTTPS访问某个网络资源时,FW将进行URL过滤。处理流程如图1所示:

图1 URL过滤处理流程图

1. 用户发起URL访问请求,如果数据流匹配了安全策略,且安全策略的动作为允许,则进行URL过滤处理流程

2. FW检测HTTP报文是否异常

如果HTTP报文异常,则阻断该请求如果HTTP报文正常,则进行下一步检测

3. FW将URL信息与白名单进行匹配

如果匹配白名单,则允许该请求通过如果未匹配白名单,则进行下一步检测

4. FW将URL信息与黑名单进行匹配

如果匹配黑名单,则阻断该请求如果未匹配黑名单,则进行下一步检测

5. FW将URL信息与自定义分类进行匹配

如果匹配自定义分类,则按照自定义URL分类的控制动作处理请求(管理员自行向预定义分类中添加的URL属于自定义分类的URL)如果未匹配自定义分类,则进行下一步检测

6. FW将URL信息与恶意URL、低信誉URL进行匹配

如果匹配恶意URL或低信誉URL,则阻断该请求如果未匹配恶意URL或低信誉URL,则进行下一步检测

7. FW将URL信息与本地缓存中的预定义分类进行匹配

如果在本地缓存中查询到对应的分类,则按照该分类的控制动作处理请求如果在本地缓存中没有查询到对应的分类,则进行远程查询如果远程查询服务器可用,则继续进行远程查询如果远程查询服务器不可用,则按照缺省动作处理请求

8. 启动远程查询

如果远程查询服务器在设定的超时时间内没有返回结果,则按照管理员配置的“超时后动作”处理如果远程查询服务器上明确查询到该URL属于某个预定义分类,则按照该分类的控制动作处理 1.5 URL远程查询过程

介绍FW进行URL远程查询的过程:

当FW支持URL远程查询功能时,可以通过远程查询扩充本地的预定义URL分类库,便于下一次的快速查询

一般来说,URL远程查询由安全中心、调度服务器和查询服务器共同完成。各设备的作用如下:

安全中心:安全中心的域名为sec.huawei.com,作用是对FW进行设备认证。如果认证通过,安全中心将根据FW所在的国家/地区信息,向FW提供该区域内的调度服务器地址和端口。和安全中心进行交互时,FW上需要配置安全策略放行相关流量,协议为TCP,目的端口为80

调度服务器:调度服务器的作用是向FW提供区域内的查询服务器地址和端口。由于调度服务器是分区域部署的,所以FW上必须配置正确的国家/地区信息,否则无法成功获取到调度服务器的地址和端口,和调度服务器进行交互时,FW上需要配置安全策略放行相关流量,协议为TCP,目的端口为12612。

查询服务器:查询服务器的作用是处理查询请求,并将查询结果返回给FW。查询服务器也是分区域部署的,且和调度服务器存在配套关系,即调度服务器只能向FW提供同一区域内的查询服务器地址和端口。和查询服务器进行交互时,FW上需要配置安全策略放行相关流量,协议为UDP,目的端口为12600

由以上内容可知,FW需要和Internet连接,才能与安全中心通信。而部分用户的FW不能与Internet连接,如果这部分用户需要获取URL远程查询功能,可以购买华为公司的产品SecoCenter,并部署在本地网络中。SecoCenter同时集成了调度服务器和查询服务器,相关介绍请参考对应的产品手册

按照服务器部署位置来划分,FW相应支持两种远程查询方式,分别为远程模式和本地模式

远程模式下,FW与安全中心进行通信。调度服务器根据FW上配置的国家/地区信息,转发查询请求给该国家/地区内的查询服务器处理本地模式下,FW与SecoCenter进行通信,不会连接安全中心

远程模式下的大致交互过程如图1所示。如果是本地模式,将省略图1中和安全中心的交互过程

交互过程如下:

FW向华为安全中心发起认证请求,并请求调度服务器的地址认证通过后,华为安全中心根据FW的国家/地区信息,向FW提供该区域内的调度服务器地址和端口FW向调度服务器请求查询服务器的地址和端口调度服务器确认FW的设备信息无误后,向FW提供查询服务器的地址和端口。一般来说,FW将收到多个查询服务器的地址和端口FW向所有查询服务器发起测速消息,并根据响应速度从中选出最优服务器,然后向该服务器请求URL分类信息查询服务器反馈URL分类信息,FW将根据此分类信息继续进行URL过滤 2、使用限制和注意事项 2.1 HTTPS URL过滤的加密流量过滤功能使用限制

URL过滤功能只支持过滤HTTP或HTTPS协议的URL请求。当过滤HTTPS协议的URL请求时,还需要配置SSL加密流量检测功能或加密流量过滤功能。如果用户希望HTTPS URL过滤更精确,建议配置SSL加密流量检测功能,而加密流量过滤功能实现的URL过滤是基于域名级别,不够精确,即通过从客户端Client Hello报文的SNI(Server Name Indication)字段、服务器Certificate报文的CN(Common Name)和SAN(Subject Alternative Name)字段中获取用户访问的网站域名。如果用户使用加密流量过滤功能实现HTTPS URL过滤,请先阅读以下使用限制:

在浏览器存在代理的情况下,当用户访问某些网站时,FW从客户端Client Hello报文的SNI字段、服务器Certificate报文的CN和SAN字段中提取的网站域名可能与实际网站的域名不匹配,这会导致URL过滤功能不生效。例如当用户通过手机的UC浏览器访问优酷网站时,URL过滤功能不生效,通过关闭手机UC浏览器的云加速功能可以解决当某些浏览器传输数据采用私有协议时,可能导致URL过滤功能不生效。例如谷歌浏览器默认使用私有协议QUIC(Quick UDP Internet Connection)进行数据传输,该协议使用专门的加密方式,FW不能解密,导致URL过滤无法过滤通过谷歌浏览器访问的HTTPS网站,通过配置安全策略将QUIC应用阻断可以解决当某些网站服务器通过相同的IP地址为多个域名提供服务时,SNI字段可能会包含多个域名,如果URL过滤黑名单只配置了其中一个域名,则无法阻断所有来自这个网站的流量。例如,用户通过HTTPS访问网站www.example.com,该网站可能有多个域名,例如1.example.com、2.example.com等,如果仅在URL过滤黑名单中配置1.example.com,则不能完全阻断这个网站的流量,通过在黑名单中配置一级域名*.example.com可以解决当一个证书中有多个URL(即多个网站使用一个证书)时,SAN字段可能会包含多个URL,如果其中一个URL被阻断,会导致这条流量都被阻断,其他的URL也访问不了如果将某个网站的域名加入URL过滤白名单,则不能保证该网站下的所有内嵌网页都正常访问。例如:当访问网站www.example.com时,如果只配置白名单为www.example.com,则该网站下不是以www.example.com为域名的内嵌网页均不能正常访问,通过将不是以www.example.com为域名的内嵌网页都加入白名单可以解决由于加密流量过滤功能是通过SSL握手报文实现URL过滤的,客户端尚未发起HTTP请求,因此不支持发送URL推送信息,通过配置SSL加密流量检测功能,可以发送URL推送信息 二、域名组 1、简介

介绍域名组的基本概念和使用场景

域名组是域名的集合,可以被多种类型的策略引用,策略包括安全策略、认证策略、带宽策略、策略路由、NAT策略和审计策略。域名组的工作原理如图1所示

假设FW已配置域名组“domain_group”,并包含域名成员“example.com”。并同时配置了带宽策略,在目的地址中使用域名组“domain_group”作为匹配条件

客户端访问域名“example.com”,发起DNS请求FW解析DNS服务器返回的应答报文,由于域名“example.com”匹配到已配置的域名组,于是记录该域名与IP地址的映射关系客户端使用返回的IP地址进行数据访问,根据IP与域名的映射关系,该访问会命中带宽策略,并执行带宽通道的动作,如重标记DSCP优先级等 2、原理描述

介绍域名的匹配方式和匹配过程

2.1 匹配方式

域名匹配方式分为精确匹配和后缀匹配,表1对两种匹配方式做了简单比较。

匹配方式定义条目匹配结果精确匹配和指定的字符串完全匹配的域名www.example.com

根据匹配规则,以下域名可以匹配该条目:

www.example.com

以下域名不会匹配该条目:

www.example.com.cn/newswww.example.org/news后缀匹配匹配所有以指定字符串结尾的域名*.example.com

匹配所有以example.com结尾的域名,如:

www.example.comtest.example.comtest.abc.example.com

以下域名不会匹配该条目:

example.test.com 2.2 匹配过程

FW收到DNS报文后,会对其进行域名解析。在通过域名进行安全策略匹配时,会根据策略所引用的域名不同而匹配规则不同,具体如下:

如果某安全策略只引用了精确域名或后缀域名,则FW只能通过对DNS报文的域名进行精确匹配或后缀匹配的方式来匹配该策略如果某安全策略同时引用了精确域名和后缀域名,则FW对DNS报文的域名分别进行精确匹配和后缀匹配,只要有一个匹配成功,则成功匹配该策略的域名

例如,某DNS报文解析后域名为www.example.test.com,若配置的某条安全策略policy1引用域名时分别存在三种情况及对应的策略匹配结果如下表所示

DNS报文域名policy1引用的域名域名匹配结果www.example.test.com

精确域名:

www.example.com

匹配失败

后缀域名:

*.test.com

匹配成功

精确域名和后缀域名:

www.example.com*.test.com匹配成功

对于后缀匹配,存在以下几点要求:

配置域名只支持*通配符,且域名只支持*.X.X格式DNS请求和应答报文必须经过FW,否则FW无法学习*.X.X相关的域名和IP地址对应关系。 2.3 使用限制和注意事项

配置域名组之前请先阅读使用限制

学习域名和IP地址的对应关系有两种方式: DNS请求报文经过FW在FW上配置DNS服务器,FW主动发起DNS请求刷新域名和IP地址的对应关系

虚拟系统下仅支持DNS请求报文经过FW来学习域名和IP地址的对应关系,不支持配置DNS服务器,因此FW在虚拟系统下不会主动发起DNS请求刷新域名和IP地址的对应关系

以下两种情况,在使用域名组作为匹配条件前,需要在FW上配置DNS服务器(与PC端配置的DNS服务器一致),以便FW和PC端学习到的域名和IP地址的对应关系一致: 当DNS报文不经过FW时,FW无法记录域名和IP地址的对应关系当FW进行了重启操作时,由于PC端已经有DNS记录,PC端不会重新发起DNS请求,导致FW学习不到DNS记录

对于以上两种情况,虚拟系统下由于不支持配置DNS服务器,因此FW不会主动发起DNS请求刷新虚拟系统下域名和IP地址的对应关系,导致虚拟系统下引用域名组的策略失效

域名组不支持IPv6域名组仅支持解析A类型的DNS应答报文,不支持解析其他类型的DNS应答报文,例如对于CNAME类型(表示当前域名存在多种别名),当配置域名组作为策略的匹配条件时,在域名解析的过程中,如果DNS服务器返回的DNS应答报文是CNAME类型,域名无法解析出IP地址,导致无法命中该策略。此时建议将当前域名的所有别名都加入域名组,并在策略中引用,使域名可以解析出IP地址,保证策略可以命中对域名组中的域名进行解析时,设备发送的DNS请求报文源地址为报文出接口IP地址。因此,为了FW可以收到响应报文并学习到域名对应的IP地址,需要保证报文出接口与DNS服务器之间路由可达 3、维护域名组 display domain-set { verbose domain-set-name [ domain domain-name ] | all }    //可以查看域名组的具体信息 三、总结

区别:

URL过滤提供更精细的控制,可以基于具体的URL路径进行过滤。域名组则更注重整体管理,适用于一组域名需要相同策略的情况URL过滤通常需要管理员指定每个要过滤的URL。域名组允许将多个相关域名组织在一起,使管理更加简便注:使用域名为源目地址的这种方式,还是谨慎使用域名组,因为域名组的方式是截取终端跟DNS之前的报文作为匹配条件,如果域名与IP之间的关系变了,那么防火墙上的映射关系没有同步更新的话,会发生策略不通故障的情况,所以以域名作为源目地址这种情况的话还是要用URL的方式,URL直接以HTTPS的URL的方式进行匹配,简单的说域名能匹配中就行,不需要做DNS解析

应用场景:

在实际应用中,这两者可以结合使用。例如,可以使用域名组来管理一组相关的域名,并在需要更精细控制的情况下,通过URL过滤来指定具体的URL策略使用域名组的主要优势是更容易维护和更新,尤其在有大量相关域名的情况下如果只是使用域名作为对象,只是单纯的做域名与IP之间的映射关系,那么域名组的形式会更加适合,那如果是域名的后面还跟着目录,比如www.xxxx.com/aaa.htmc/,那这样子的话URL效果会更好些

那么本篇文章就到这里结束了,谢谢各位帅哥靓女!



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3